前言

使用acme可以生成免费的https证书,并且部署简单,让我们一起了解下。

安装

我是nginx服务器,所以我以nginx为代表,来告诉如何安装。

下载acme脚本,并执行脚本

curl  https://get.acme.sh | sh

安装过程执行了以下几步:

  1. 把 acme.sh 安装到你当前登陆账户的home目录下。如果是root账户,安装的位置在~/.acme.sh/
  2. 创建了一个acme.sh的快捷方式alias acme.sh=~/.acme.sh/acme.sh
  3. 在crontab自动任务里面创建了一个定时任务,每天0:00点自动检测所有的证书,如果快过期了,会自动更新证书.35 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

安装过程不会污染已有的系统任何功能和文件,所有的修改都限制在.acme.sh目录中

生成证书

acme.sh --issue  -d 域名   --nginx

执行该命令会进行以下步骤:

  1. 自动找到nginx目录,并生成临时文件
  2. 通过域名访问该临时文件,访问完成后删除临时文件
  3. 如果能正常访问,则验证通过,生成证书。否则报错

把证书拷贝到自定义目录

默认证书在安装目录.acme.sh下生成,但不要直接使用该目录下的证书,而应该拷贝到其他自定义目录下。因为.acme.sh目录下的文件可能会被更改。

acme.sh --install-cert -d 域名 \
--key-file       自定义目录/key.pem  \
--fullchain-file 自定义目录/cert.pem 

使用上面命令进行拷贝,acme自动更新证书的任务才能知道要更新的位置。

配置nginx文件

server {
    listen       80;
    server_name  qiud.xyz;
    rewrite ^(.*)$ https://qiud.xjj permanent;
}
server {
  listen  443 ssl;
  ssl on;
  ssl_certificate       /root/acme/qiud.xjj.cer;
  ssl_certificate_key   /root/acme/qiud.xjj.key;
  ssl_protocols         TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers           HIGH:!aNULL:!MD5;
  server_name           qiud.xjj;

    location /{ 
    proxy_redirect off;
    proxy_pass http://localhost:8080;      
    proxy_http_version 1.1;
    }
}

以上配置文件的意思是,当访问80端口就重定向到443端口,并转发给应用程序监听的8080端口。

重启nginx服务器

service nginx restart

结束

自此,我们就完成了acme免费申请https证书,再也不用看那红色的警告了,心情都舒爽了。

THE END
推荐文章
  • jquery使用cdn,如何在js文件中出现提示

  • AI当中system、user、assistant三者的角色区别

  • 如何进入填写个体户年报的界面

  • 黄帝内经-第九篇-六节脏象论篇(2)

  • VSCode中如何通过文件名快速找到这个文件

  • 为什么不要做种植牙

  • 同一行的元素,按钮和输入框对不齐的解决方法

  • 黄帝内经-第21篇-经脉别论篇(1)

评论 共0条
开启精彩搜索

热门搜索

暂无

历史搜索

用户名/邮箱/手机号
密码
用户名
密码
重复密码
邮箱/手机号
验证码
发送验证码
59秒后可重发
注册
找回密码
邮箱/手机号
验证码
发送验证码
59秒后可重发
新密码
重复密码
请选择支付方式
余额支付

购买将消耗【10

微信支付
微信扫码支付 0 元
[ 04分50秒 ]
请使用微信扫一扫
扫描二维码支付
支付宝支付
支付宝扫码支付 0 元
[ 04分50秒 ]
请使用支付宝扫一扫
扫描二维码支付
已完成支付
未完成支付

请输入验证码

点击验证码可以刷新

你确认吗?

确认

2024年10月1日

0字

0字

2024年10月

0字

新增

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

新增

0字

0字

0字

新增

0字

0字

0字

0字

新增

0字

0字